A typical data communications network includes multiple host computers (or hosts) that communicate with each other through a system of data communications devices (e.g., switches and routers) and transmission media (e.g., electrical wiring, fiber-optic cable, and/or wireless connections). In general, a sending host exchanges data with a receiving host by packaging the data using a standard format or protocol to form one or more data structures (e.g., packets, frames or cells), and transferring these data structures (hereinafter generally referred to as packets) to the receiving host through the above-described system of data communications devices and transmission media. The receiving host then unpackages and uses the data.
A data stream refers to one or more packets sent by a sending host to a receiving host. The data communications devices (also called nodes), which reside between sending and receiving hosts, provide network paths that convey such data streams from the sending hosts to the receiving hosts.
Some nodes are configured to directly communicate with a sending host or a receiving host when transferring a data stream from the sending host to the receiving host. In particular, such nodes often require control information from the sending or receiving host for controlling the data stream. For example, when a sending host provides an ReSerVation Protocol (RSVP) session (i.e., a data stream) to a receiving host through a particular node, an RSVP daemon running on that node typically receives, from the sending host, instructions that direct the RSVP daemon to reserve a particular amount of bandwidth on behalf of the sending host for the RSVP session. As another example, when a data stream reaches a particular node that filters packets for security purposes (e.g., a firewall or security node), that filtering node may communicate with the sending or receiving host for information to authenticate the data stream prior to allowing the data stream to pass through to the receiving host.